home *** CD-ROM | disk | FTP | other *** search
/ BCI NET 2 / BCI NET 2.iso / archives / programming / c / c2man-2.0pl33.lha / c2man-2.0 / pc / config.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-01-14  |  8.9 KB  |  307 lines

  1. /*
  2.  * This file was produced by running the config_h.SH script, which
  3.  * gets its values from config.sh, which is generally produced by
  4.  * running Configure.
  5.  *
  6.  * Feel free to modify any of this as the need arises.  Note, however,
  7.  * that running config.h.SH again will wipe out any changes you've made.
  8.  * For a more permanent change edit config.sh and rerun config.h.SH.
  9.  *
  10.  * $Id: config.h,v 2.0.1.3 1993/09/15 03:53:49 greyham Exp $
  11.  */
  12.  
  13. /* Configuration time: Sun Aug 22 08:23:18 CDT 1993
  14.  * Configured by: hankedr
  15.  * Target system: SunOS lab1 4.1.2 2 sun4c
  16.  */
  17.  
  18. #ifndef _config_h_
  19. #define _config_h_
  20.  
  21. /* HAS_ACCESS:
  22.  *    This manifest constant lets the C program know that the access()
  23.  *    system call is available to check for accessibility using real UID/GID.
  24.  *    (always present on UNIX.)
  25.  */
  26. #define HAS_ACCESS        /**/
  27.  
  28. /* HASCONST :
  29.  *    This symbol, if defined, indicates that this C compiler knows about
  30.  *    the const type. There is no need to actually test for that symbol
  31.  *    within your programs. The mere use of the "const" keyword will
  32.  *    trigger the necessary tests.
  33.  */
  34. #define HASCONST    /**/
  35. #ifndef HASCONST
  36. #define const
  37. #endif
  38.  
  39. /* FLEXFILENAMES:
  40.  *    This symbol, if defined, indicates that the system supports filenames
  41.  *    longer than 14 characters.
  42.  */
  43. #define    FLEXFILENAMES        /**/
  44.  
  45. /* HAS_OPEN3
  46.  *    This manifest constant lets the C program know that the three
  47.  *    argument form of open(2) is available.
  48.  */
  49. #define HAS_OPEN3        /**/
  50.  
  51. /* HAS_STRCHR:
  52.  *    This symbol is defined to indicate that the strchr()/strrchr()
  53.  *    functions are available for string searching. If not, try the
  54.  *    index()/rindex() pair.
  55.  */
  56. #define HAS_STRCHR    /**/
  57.  
  58. /* HAS_STRFTIME:
  59.  *    This symbol, if defined, indicates that the strftime routine is
  60.  *    available to format locale-specific times.
  61.  */
  62. #define HAS_STRFTIME    /**/
  63.  
  64. /* HAS_STRSTR
  65.  *    This symbol, if defined, indicates that the strstr routine is
  66.  *    available to find substrings.
  67.  */
  68. #define HAS_STRSTR    /**/
  69.  
  70. /* HAS_LINK
  71.  *    This symbol, if defined, indicates that the link routine is available
  72.  *    to create hard links. OS/2 and DOS stupidity.
  73. /*#define HAS_LINK      /**/
  74.  
  75. /* HAS_SYMLINK
  76.  *    This symbol, if defined, indicates that the symlink routine is available
  77.  *    to create symbolic links.
  78.  */
  79. /*#define HAS_SYMLINK    /**/
  80.  
  81. /* Time_t
  82.  *    This symbol holds the type returned by time(). It can be long,
  83.  *    or time_t on BSD sites (in which case <sys/types.h> should be
  84.  *    included).
  85.  */
  86. #define Time_t long        /* Time type */
  87.  
  88. /* HASVOLATILE :
  89.  *    This symbol, if defined, indicates that this C compiler knows about
  90.  *    the volatile declaration.
  91.  */
  92. #define    HASVOLATILE    /**/
  93. #ifndef HASVOLATILE
  94. #define volatile
  95. #endif
  96.  
  97. /* I_FCNTL
  98.  *    This manifest constant tells the C program to include <fcntl.h>.
  99.  */
  100. #define I_FCNTL    /**/
  101.  
  102. /* I_STDARG:
  103.  *    This symbol, if defined, indicates that <stdarg.h> exists and should
  104.  *    be included.
  105.  */
  106. #define I_STDARG        /**/
  107.  
  108. /* I_STDDEF:
  109.  *    This symbol, if defined, indicates that <stddef.h> exists and should
  110.  *    be included.
  111.  */
  112. #define I_STDDEF    /**/
  113.  
  114. /* I_STDLIB:
  115.  *    This symbol, if defined, indicates that <stdlib.h> exists and should
  116.  *    be included.
  117.  */
  118. #define I_STDLIB        /**/
  119.  
  120. /* I_STRING:
  121.  *    This symbol, if defined, indicates to the C program that it should
  122.  *    include <string.h> (USG systems) instead of <strings.h> (BSD systems).
  123.  */
  124. #define I_STRING        /**/
  125.  
  126. /* I_SYS_FILE
  127.  *    This symbol, if defined, indicates to the C program that it should
  128.  *    include <sys/file.h> to get definition of R_OK and friends.
  129.  */
  130. #ifdef _MSC_VER
  131. #define W_OK 2
  132. #else
  133. #define I_SYS_FILE        /**/
  134. #endif
  135.  
  136. /* I_SYS_TYPES
  137.  *    This symbol, if defined, indicates to the C program that it should
  138.  *    include <sys/types.h>.
  139.  */
  140. #define    I_SYS_TYPES        /**/
  141.  
  142. /* I_TIME
  143.  *    This symbol, if defined, indicates to the C program that it should
  144.  *    include <time.h>.
  145.  */
  146. /* I_SYS_TIME
  147.  *    This symbol, if defined, indicates to the C program that it should
  148.  *    include <sys/time.h>.
  149.  */
  150. #define I_TIME        /**/
  151. /*#define I_SYS_TIME        /**/
  152.  
  153. /* I_UNISTD:
  154.  *    This symbol, if defined, indicates to the C program that it should
  155.  *    include <unistd.h>.
  156.  */
  157. /*#define    I_UNISTD        /**/
  158.  
  159. /* I_VARARGS:
  160.  *    This symbol, if defined, indicates to the C program that it should
  161.  *    include <varargs.h>.
  162.  */
  163. /*#define I_VARARGS        /**/
  164.  
  165. /* CAN_PROTOTYPE :
  166.  *    If defined, this macro indicates that the C compiler can handle
  167.  *    function prototypes.
  168.  */
  169. /* DOTS :
  170.  *    This macro is used to specify the ... in function prototypes which
  171.  *    have arbitrary additional arguments.
  172.  */
  173. /* NXT_ARG :
  174.  *    This macro is used to separate arguments in the declared argument list.
  175.  */
  176. /* P_FUNC :
  177.  *    This macro is used to declare "private" (static) functions.
  178.  *    It takes three arguments: the function type and name, a parenthesized
  179.  *    traditional (comma separated) argument list, and the declared argument
  180.  *    list (in which arguments are separated with NXT_ARG, and additional
  181.  *    arbitrary arguments are specified with DOTS).  For example:
  182.  *
  183.  *        P_FUNC(int foo, (bar, baz), int bar NXT_ARG char *baz[])
  184.  */
  185. /* P_FUNC_VOID :
  186.  *    This macro is used to declare "private" (static) functions that have
  187.  *    no arguments.  The macro takes one argument: the function type and name.
  188.  *    For example:
  189.  *
  190.  *        P_FUNC_VOID(int subr)
  191.  */
  192. /* V_FUNC :
  193.  *    This macro is used to declare "public" (non-static) functions.
  194.  *    It takes three arguments: the function type and name, a parenthesized
  195.  *    traditional (comma separated) argument list, and the declared argument
  196.  *    list (in which arguments are separated with NXT_ARG, and additional
  197.  *    arbitrary arguments are specified with DOTS).  For example:
  198.  *
  199.  *        V_FUNC(int main, (argc, argv), int argc NXT_ARG char *argv[])
  200.  */
  201. /* V_FUNC_VOID :
  202.  *    This macro is used to declare "public" (non-static) functions that have
  203.  *    no arguments.  The macro takes one argument: the function type and name.
  204.  *    For example:
  205.  *
  206.  *        V_FUNC_VOID(int fork)
  207.  */
  208. /* _
  209.  *    This macro is used to declare function parameters for folks who want
  210.  *    to make declarations with prototypes using a different style than
  211.  *    the above macros.  Use double parentheses.  For example:
  212.  *
  213.  *        int main _((int argc, char *argv[]));
  214.  */
  215. #define    CAN_PROTOTYPE    /**/
  216. #ifdef CAN_PROTOTYPE
  217. #define    NXT_ARG ,
  218. #define    DOTS , ...
  219. #define    V_FUNC(name, arglist, args)name(args)
  220. #define    P_FUNC(name, arglist, args)static name(args)
  221. #define    V_FUNC_VOID(name)name(VOID)
  222. #define    P_FUNC_VOID(name)static name(VOID)
  223. #define    _(args) args
  224. #else
  225. #define    NXT_ARG ;
  226. #define    DOTS
  227. #define    V_FUNC(name, arglist, args)name arglist args;
  228. #define    P_FUNC(name, arglist, args)static name arglist args;
  229. #define    V_FUNC_VOID(name)name()
  230. #define    P_FUNC_VOID(name)static name()
  231. #define    _(args) ()
  232. #endif
  233.  
  234. /* CAN_VAPROTO :
  235.  *    This variable is defined on systems supporting prototype declaration
  236.  *    of functions with a variable number of arguments.
  237.  */
  238. /* _V :
  239.  *    This macro is used to declare function parameters in prototypes for
  240.  *    functions with a variable number of parameters. Use double parentheses.
  241.  *    For example:
  242.  *
  243.  *        int printf _V((char *fmt, ...));
  244.  *
  245.  *    Remember to use the plain simple _() macro when declaring a function
  246.  *    with no variable number of arguments, since it might be possible to
  247.  *    have a non-effect _V() macro and still get prototypes via _().
  248.  */
  249. #define CAN_VAPROTO    /**/
  250. #ifdef CAN_VAPROTO
  251. #define    _V(args) args
  252. #else
  253. #define    _V(args) ()
  254. #endif
  255.  
  256. /* VOIDFLAGS :
  257.  *    This symbol indicates how much support of the void type is given by this
  258.  *    compiler.  What various bits mean:
  259.  *
  260.  *        1 = supports declaration of void
  261.  *        2 = supports arrays of pointers to functions returning void
  262.  *        4 = supports comparisons between pointers to void functions and
  263.  *            addresses of void functions
  264.  *        8 = suports declaration of generic void pointers
  265.  *
  266.  *    The package designer should define VOIDUSED to indicate the requirements
  267.  *    of the package.  This can be done either by #defining VOIDUSED before
  268.  *    including config.h, or by defining defvoidused in Myinit.U.  If the
  269.  *    latter approach is taken, only those flags will be tested.  If the
  270.  *    level of void support necessary is not present, defines void to int.
  271.  */
  272. #ifndef VOIDUSED
  273. #define VOIDUSED 9
  274. #endif
  275. #define VOIDFLAGS 9
  276. #if (VOIDFLAGS & VOIDUSED) != VOIDUSED
  277. #define void int        /* is void to be avoided? */
  278. #define M_VOID            /* Xenix strikes again */
  279. #endif
  280.  
  281. /* CPP_FILE_COM
  282.  *    This symbol contains the first part of the string which will invoke
  283.  *    the C preprocessor a file and produce to standard output, preserving
  284.  *    comments. Typical value of "cc -E -C" or "/lib/cpp -C".
  285.  */
  286. /* CPP_STDIN_FLAGS
  287.  *    This variable contains any flags necessary to get CPP_FILE_COM to
  288.  *    read from the standard input.
  289.  */
  290. /* CPP_IGN_HDRS
  291.  *    This symbol is defined if CPP_FILE_COM ignores *.h files.
  292.  */
  293. /* CPP_CAN_STDIN
  294.  *    This symbol is defined if CPP_FILE_COM can read standard input
  295.  *    directly.
  296.  */
  297. #ifdef _MSC_VER
  298. #define CPP_FILE_COM "cl -nologo -E -C"
  299. #else
  300. #define CPP_FILE_COM "gcc -E -C"
  301. #endif
  302. #define CPP_STDIN_FLAGS ""
  303. /*#define CPP_IGN_HDRS        /* does CPP ignore .h files? */
  304. /*#define CPP_CAN_STDIN     /* can CPP read stdin directly? */
  305.  
  306. #endif
  307.